package com.ruoyi.user.domain;

import com.fasterxml.jackson.annotation.JsonFormat;
import com.ruoyi.business.domain.Coupon;
import com.ruoyi.business.domain.Shop;
import com.ruoyi.common.core.annotation.Excel;
import com.ruoyi.common.core.web.domain.BaseEntity;
import lombok.AllArgsConstructor;
import lombok.Data;
import lombok.NoArgsConstructor;

import java.util.Date;

/**
 * 用户优惠卷中间对象 user_coupon
 *
 * @author yyq
 * @date 2025-3-14
 */
@Data
@AllArgsConstructor
@NoArgsConstructor
public class UserCoupon extends BaseEntity
{
    private static final long serialVersionUID = 1L;

    /** 主键id */
    private Long id;

    /** 用户id */
    @Excel(name = "用户id")
    private Long uId;

    /** 优惠券id */
    @Excel(name = "优惠券id")
    private Long cId;

    /** 数量，默认值是1 */
    @Excel(name = "数量，默认值是1")
    private Long num;

    /** 使用开始时间 【领取的时间，优惠券领完可以立刻使用，平台特
色】 */
    @JsonFormat(pattern = "yyyy-MM-dd")
    @Excel(name = "使用开始时间 【领取的时间，优惠券领完可以立刻使用，平台特色】", width = 30, dateFormat = "yyyy-MM-dd")
    private Date expirationStart;

    /** 使用结束时间 【1个月】 */
    @JsonFormat(pattern = "yyyy-MM-dd")
    @Excel(name = "使用结束时间 【1个月】", width = 30, dateFormat = "yyyy-MM-dd")
    private Date expirationEnd;

    /** 状态【0未使用、1已使用、2已过期】 */
    @Excel(name = "状态【0未使用、1已使用、2已过期】")
    private Long status;

    private Coupon coupons;
    private Shop shop;
}
